home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
lists
/
gem
/
l_1199
/
1118
< prev
next >
Wrap
Internet Message Format
|
1994-08-27
|
3KB
Date: Fri, 29 Jul 94 02:49 CDT
From: ekl@sdf.lonestar.org (Evan K. Langlois)
To: gem-list@world.std.com
Subject: Re: Gem List
Precedence: bulk
========================================================================
To get right mouse button clicks, simply use vq_mouse and get the correct
information from VDI, or use event_dclick for the double click information.
========================================================================
evnt_dclick() is for setting the double-click timer. You can NOT get
double clicks from it!! vq_mouse()? Are you insane? Do NOT mix AES
functions with the VDI functions when you don't have to, and PLEASE
make the program event driven!! DO you really expect everyone to use
a 0ms timer on the evnt_multi and poll for mouse events? You want people
to call evnt_multi() and vq_mouse() in a tight loop just to get the
right button clicks? THIS IS WRONG. And for hot-objects I suppose
we should call wind_find and objc_find in this tight loop too.
3 of the most taxing AES calls plus a VDI call in a tight loop eating as
m,uch CPU time as it possibly can. It is WRONG. Please do NOT tell
others to do this. Evnt_multi() can handle up to 8 buttons, please
see my code for a full explaination of this. No timer events required.
========================================================================
This works, but you have to enable BOTH button DOWN flags, and you need to
set the number of clicks to 1. However, you could use 2, but this is
not recommended, as AES will be forced to wait for two mouse clicks, and will
not stop at one.
========================================================================
No, use the code I posted using the guidelines in the source. Set the
number of clicks to the MAXIMUM number you want to recieve. However,
if you wish to distinguish a press from a click, it may be best to set
the maximum clicks to 2, to enable the delay (that is determined by the
user with evnt_dclick() which is called in desk ACCs and CPXs), then
you can just treat a double-click as a single click if you don't want
double-clicks.
So, it IS recommended to use a 2, actually, 0x0102 (258), but read the
code. And the AES does NOT wait for two mouse clicks. It waits a
pre-determined amount of time (in the ms range!) for multiple clicks
to occur. This allows multiple clicks to be sent as one event and it
gives the user time to release the mouse button. It will NOT wait until
the mouse is clicked twice .. it is a MAXIMUM clicks, not MINIMUM.
I don't think you know what the GEM standards are. You are defining
your own and doing everything that you accuse other people of doing as
far as breaking interface guidelines and standards. Try using GEM
correctly and see what happens.